package cn.com.megan.drawlots.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * <p>
 * 幸运转盘表
 * </p>
 *
 * @author megan
 * @since 2025-05-15 09:10:00
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("lucky_wheels")
@ApiModel(value = "LuckyWheels对象", description = "幸运转盘表")
public class LuckyWheels implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键，转盘唯一标识")
    @TableId(value = "wheel_id", type = IdType.AUTO)
    private Integer wheelId;

    @ApiModelProperty("创建者ID，关联用户表")
    @TableField("user_id")
    private Integer userId;

    @ApiModelProperty("转盘标题")
    @TableField("title")
    private String title;

    @ApiModelProperty("转盘选项JSON数据")
    @TableField("items")
    private String items;

    @ApiModelProperty("是否启用音效(0:否, 1:是)")
    @TableField("sound_effect")
    private Boolean soundEffect;

    @ApiModelProperty("是否启用动画(0:否, 1:是)")
    @TableField("animation")
    private Boolean animation;

    @ApiModelProperty("转动时长(毫秒)")
    @TableField("rotation_time")
    private Integer rotationTime;

    @ApiModelProperty("是否公开(0:否, 1:是)")
    @TableField("is_public")
    private Boolean isPublic;

    @ApiModelProperty("使用次数")
    @TableField("use_count")
    private Integer useCount;

    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;

    @ApiModelProperty("修改时间")
    @TableField("update_time")
    private LocalDateTime updateTime;
}
